package com.yidu.dao;

import java.util.List;
import java.util.Map;

import com.yidu.domain.ListenPurchase;
import com.yidu.domain.ListenSell;
/**
 * @title 采购订单Dao类 
 * @author 刘武
 * @dateTime 2019年1月14日
 */
public interface ListenPurchaseMapper {
    int deleteByPrimaryKey(String purchaseId);

    int insert(ListenPurchase record);

    int insertSelective(ListenPurchase record);

    ListenPurchase selectByPrimaryKey(String purchaseId);

    int updateByPrimaryKeySelective(ListenPurchase record);

    int updateByPrimaryKey(ListenPurchase record);
    /**
     * 查询所有
     * @param purchase 订单对象 
     * @return 订单对象集合
     */
	List<ListenPurchase> findAll(ListenPurchase purchase);
	/**
	 * 查询行数
	 * @param purchase 订单对象 
	 * @return int类型
	 */
	int findRows(ListenPurchase purchase);
	/**
	 * 删除的方法
	 * @param purchase 订单对象
	 * @return int类型
	 */
	int delete(ListenPurchase purchase);
	
	/**
	 * @title 查询材料采购
	 * @param ListenPurchase
	 * @return List
	 * @author 江宇
	 * @dateTime 2018年12月10日
	 * @versions 1.0
	 */
	List<ListenPurchase> materialFindAll(Map<String, Object> map);
	
	/**
	 * @title 查询材料采购行数
	 * @param ListenPurchase
	 * @return int
	 * @author 江宇
	 * @dateTime 2018年12月10日
	 * @versions 1.0
	 */
	int materialFindRows(Map<String, Object> map);
	/**
	 * 显示分店采购乐器审核
	 * @param purchase 采购对象
	 * @return 采购对象集合
	 */
	List<ListenPurchase> findMusicState(ListenPurchase purchase);
	/**
	 * 显示分店采购乐器审核页数
	 * @param purchase 采购对象
	 * @return int 行数
	 */
	int findMusicStateRows(ListenPurchase purchase);
	/**
	 * 显示分店总经理采购乐器审核页数
	 * @param purchase 采购对象
	 * @return int 行数
	 */
	int findManagerStateRows(ListenPurchase purchase);
	/**
	 * 显示分店总经理采购乐器审核
	 * @param purchase 采购对象
	 * @return 采购对象集合
	 */
	List<ListenPurchase> findManagerState(ListenPurchase purchase);
	/**
	 * 通过采购订单id查询库存
	 * @param purchaseId 采购id
	 * @return 采购对象集合
	 */
	List<ListenPurchase> findByMusicalNumber(String purchaseId);
	/**
	 * 修改采购订单的状态
	 * @param purchase 采购对象
	 * @return int类型
	 */
	int updateState(ListenPurchase purchase);
	/**
	 * 通过订单id查询订单
	 * @param purchaseId 订单id
	 * @return 订单对象
	 */
	ListenPurchase findPurchase(String purchaseId);
	/**
	 * 通过采购id查询销售id
	 * @param sell 销售对象
	 * @return 采购集合
	 */
	List<ListenPurchase> findSellId(ListenSell sell);
	
	
}